package io.xccit.train.member.service;


import io.xccit.train.model.member.domain.dto.MemberDTO;
import io.xccit.train.model.member.domain.dto.MemberLoginDTO;
import io.xccit.train.model.member.domain.vo.MemberVO;

/**
 * @author CH_ywx
 * @version 1.0
 * @create 2024/11/4
 * <p></p>
 */
public interface MemberService {
    /**
     * 查询会员总数
     * @return
     */
    public Long count();

    /**
     * 会员注册
     * @param memberDTO 请求参数
     * @return 会员主键
     */
    public Long registry(MemberDTO memberDTO);

    /**
     * 发送验证码
     * @param memberDTO
     * @return 请求结果
     */
    void sendCode(MemberDTO memberDTO);

    /**
     * 会员登录
     * @param memberLoginDTO 请求参数
     * @return 会员token
     */
    MemberVO login(MemberLoginDTO memberLoginDTO);
}
